Copyright □ 1999, by Professor Jong-Hwan Kim, Korea Advanced Institute of Science and Technology (KAIST).  All rights reserved. Reproduction or translation of any part of this work is unlawful. Request for permission or further information should be addressed to Professor Jong-Hwan Kim at <johkim@vivaldi.kaist.ac.kr> or <Tel: +82-42-869-3448>.

Prof. Jong-Hwan Kim	Intelligent Control Lab, KAIST

4.모터와 구동회로

4.1 모터

로봇의 구조를 기계적인 부분과 전기적인 부분으로 구분할 때 기계적인 부분의 핵심은 모터라고 할 수 있다. 여기서는 모터를 비롯하여 기어, 바퀴, 엔코더 및 모터 제어기를 모두 합쳐서 모터부라고 한다. 기존 미로 찾기 로봇에서 대부분 스태퍼 모터를 사용한 것과는 달리 축구 로봇에서는 모두 DC 모터를 사용하고 있다. DC 모터는 스태퍼 모터에 비해 가격이 싸고 크기가 작다는 장점이 있으나, 토크를 증가시키기 위한 기어와 축의 회전각을 알 수 있는 엔코더가 필요하며 회전각 및 회전 속도 제어를 위해 폐루프 제어기가 필요하다는 단점이 있다.

본 장에서는 로봇 축구에서 필요한 DC 모터의 요구 조건 및 이에 적합한 모터의 선정 방법과 선정된 모터를 배치하는 방법 및 로봇의 위치 제어 방법에 대해 살펴보도록 한다.

4.1.1 모터부

회로 부품의  경우에는 표면 실장형 (SMD) 부품의 사용과 적절한 부품 배치를 통해 차지하는 부피를 크게 줄일 수 있으나, 모터부는 이미 판매되는 모터 및 부착되는 기어 박스의 크기가 모두 고정되어 있기 때문에 선택의 폭이 넓지 않을 뿐 아니라 부피도 크다는 단점이 있다. 따라서 축구 로봇에는  마이크로 마우스에 주로 사용되는 스태퍼 모터와 달리 모두 DC 모터를 사용하고 있다. DC 모터를 사용하기 위해서는 모터 축의 회전각을 알기 위한 엔코더와 토크를 증가시키기 위한 기어 박스가 필요하며, 모터를 제어할 수 있는 모터 제어부가 있어야 한다.

DC 모터를 선정하기 위해서는 모터의 회전 속도, 소비 전력, 크기 등을 고려해야 한다. DC 모터는 대부분 기어 박스가 부착되어 있으므로 기어 박스를 고려하여 설명한다.

그림 4. 기어 및 엔코더 일체형 DC 모터

4.1.2 DC 모터

DC 모터는 그림4.2와 같이 회전자 (rotor) 와 고정자 (stator) 로 구성되어 있다.

그림 4. 모터의 원리

고정자는 좌우에 고정된 N 극과 S 극의 영구 자석으로 되어 있으며 이것으로 인해 모터 내부에 일정한 자기장 B를 형성한다. 이 때 회전자에 전류 I가 흐르면서 외부에 형성된 자기장에 의해 힘 F를 받게 된다 ([eqn: F = I times B]). 회전자의 전류는 정류자 (commutator) 를 통하여 외부에 고정되어 있는 브러쉬 (brush) 에 의해 공급된다. 정류자에 의해 공급되는 전류의 방향이 일정하게 유지되어 회전자를 일정한 방향으로 움직이게 된다. 그러나 이 때 파라데이의 법칙에 의해 폐루프를 이루는 회전자에 의해 역기전력 (back-emf) 이 발생하여 결과적으로 회전자의 양단에 걸리는 전압은 외부에서 가한 전압보다 작아지게 된다. 이것을 식으로 정리하면

U (외부에서 가한 전압) = E + [eqn: I][eqn: times][eqn: r]

E (역기전력 (back-emf)) = [eqn: k_bemf times] n

T (모터의 토크) = [eqn: k_T times I]

[eqn: I]: 회전자에 흐르는 전류

[eqn: r]: 회전자의 저항 (amature resistance)

n: 회전자의 회전 속도

[eqn: k_bemf]: 역기전력 상수

[eqn: k_T]: 토크 상수

로 나타낼 수 있다.

이와 같은 DC 모터의 여러 상수들은 각 회사에서 제공하는 모터 사양에 명시되어 있다. 다음 장부터는 이러한 상수들을 고려하여 축구 로봇에 적합한 모터를 선정하는 방법에 대해 알아본다.

4.1.3 모터의 선정기준

4.1.3.1 토크

모터의 여러 선정 기준 중 토크를 가장 먼저 언급하는 것은 모터의 속도 및 전류 등이 모두 그림 4.3과 같이 토크를 기준으로 결정되기 때문이다. 일반적으로 토크가 커질수록 공급되는 전류는 증가하고 모터의 속도는 감소하는 것을 볼 수 있다.

그림 4. 토크와 속도 및 전류 관계

축구 로봇은 대부분 두 개의 바퀴로 구동하는데 이 때 로봇을 움직이기 위한 힘 F 는 다음과 같이 구할 수 있다.

그림 4. 로봇축에 걸리는 토크

바닥면과 바퀴의 마찰력:	[eqn: F_r \ = \ mu times m times g]

바퀴가 움직이기 위해 가하는 힘: [eqn: F \ = \ F_r \ times R_0 over R]

여기서

[eqn: mu] : 바닥면과 바퀴 사이의 마찰 계수

m : 로봇의 질량

g : 중력 가속도

[eqn: R_0]: 축의 반지름

[eqn: R] : 바퀴의 반지름

이다.

로봇은 두 개의 바퀴축을 가지므로, 각각의 바퀴축에 걸리는 토크 [eqn: tau_G] 는

[eqn: tau_G \ = \ 1 over 2 times \ F \ times \ R \ = \ 1 over 2 times mu times m times g times R_0]

이 된다. 이것은 로봇의 바퀴축에 걸리는 토크로 모터에 걸리는 토크는 이것을 다시 기어비 및 기어 사양에 표시된 효율 (efficiency) 로 나누어야 한다. 즉, 기어비가 [eqn: N], 효율이 [eqn: eta_G] 라 하면 최종적으로 모터축에 걸리는 토크 [eqn: tau_M] 은 다음과 같다.

[eqn: tau_M \ = \ tau_G over { N times eta_G } \ = \ {mu times m times g times R_0 } over { 2 times N times eta_G }]

4.1.3.2 소비 전력

소비 전력은 로봇이 소모하는 전력 중에서 모터부가 차지하는 전력이므로 선택한 모터부가 공급할 수 있는 전력보다 많은 양을 소모해서는 안 된다. 이 점은 소형 로봇 제작시에 특히 중요한 요소인데 전지의 교환 기회가 로봇 축구에서는 전후반을 모두 합쳐 두 번 밖에 되지 않으므로 가능한 한 전지 교체를 위하여 작전 타임의 기회를 사용하지 않도록 해야 한다.

공급할 수 있는 전력은 모터에 인가하는 전압과 흘려 줄 수 있는 전류의 곱으로 표시되고, 모터에서 소비하는 소비 전력은 모터의 양단에 걸리는 전압과 모터에 흐르는 전류의 곱으로 표시할 수 있는데 보통 모터에 인가하는 전압은 고정되어 있으므로 모터에 공급하는 전류를 계산해야 한다. 모터에 공급되는 전류는 모터축에 걸리는 부하에 의해 결정된다. 모터의 사양에는 토크 상수 [eqn: k_T] (torque constant (mNm/A)) 가 나와 있는데 이것이 바로 부하 (토크) 와 전류의 비례 상수이다. 앞절에서 구한 모터의 토크를 이용해

[eqn: I \ = \ {tau \ ( \mNm)} over {k_T \ ( \mNM/A) } \ ( \A)]

로 전류를 구한다.

여기서 토크 [eqn: tau]는 앞절에서 구한 모터의 부하 토크에 모터 고유의 마찰 토크 [eqn: tau_r] (friction torque) 을 더한 것이다. 모터 사양에 따라 이 마찰 토크가 표시되지 않은 것도 있는데 이 때는 모터에 부하 토크가 걸리지 않은 상태에서의 전류인 무부하 전류 [eqn: I_0] (no load current) 를 이용하여 다음과 같이 구할 수 있다.

[eqn: tau_r \ = \ I_0 times k_T]

이것을 위의 식에 대입하면

[eqn: I \ = \ tau over k_T \ = \ {tau_M + tau_r} over k_T \ = \ tau_M over k_T + I_0]

가 된다.

4.1.3.3 회전속도

DC 모터의 회전 속도 n은 사양에 RPM (1 분당 회전수, rotation per minute) 으로 표시된다. 회전 속도 n에 관계된 상수는 역기전력 상수 [eqn: k_BEMF] (back-EMF constant) 와 다음과 같은 관계를 가진다.

[eqn: U \ = \ I times r + k_BEMF times n]

여기서

U : 모터에 인가된 전압

I  : 모터에 공급되는 전류

r : 모터의 저항 (terminal resistance)

이고 따라서 모터의 회전수 [eqn: n] 및 로봇의 속도 [eqn: v] 는 다음과 같이 구한다.

[eqn: n \ = \ { U - I times r } over k_BEMF \ (rpm)],

[eqn: v \ = \ { 2 times pi times R times n } over { 60 times N} \ cm/s]

여기서

[eqn: R]: 바퀴의 반지름

[eqn: N]: 기어비

이다.

4.1.3.4 크기

소형 로봇을 제작하는데 있어서 가장 큰 제약은 모터 및 기어박스의 크기에서 오는 한계이다. 축구 로봇은 약 0.4 kg 의 무게에 최고 속도가 1 m/s 이상의 매우 빠른 속도를 요구하면서도 한 변의 길이는 최대 7.5 cm 로 제한하고 있기 때문에 이와 같은 크기 및 성능을 충족하는 모터와 기어 박스를 찾기는 쉽지 않다.

모터의 크기와 밀접하게 관련된 것이 바로 모터를 어떤 식으로 배열할 것인가이다. 대부분의 모터 회사에서는 ㄱ 자 형태의 기어 박스를 제공하지 않기 때문에 만일 기어 또는 엔코더를 포함하여 4 cm 를 넘게 된다면 엊갈리게 배치할 수 밖에 없을 것이다.

4.1.3.5 모터 선정 예

이 장에서는 앞절에서 언급한 여러 기준을 실제 문제에 적용하여 축구 로봇에 사용하기에 적합한 모터를 결정하는 예를 보인다. 선정 기준은 토크, 소비 전력, 회전 속도, 크기 등이다.

소비 전력의 경우는 사용하는 전지와 직접 관계가 있다. 많이 사용하는 니켈 카드뮴의 경우 전체 12V, 550 mA의 평균 공급 전류 중 약 300 mA는 회로부에서, 250 mA는 기계부인 모터가 사용할 수 있다고 하자.

회전 속도는 로봇의 직선 최고 속도 및 바퀴 크기로부터 계산할 수 있다. 직선 최고 속도가 1m/s, 바퀴의 반지름이 2 cm 라고 하면 바퀴 축의 회전 속도 [eqn: n]은

[eqn: n \ = \ { 100 cm/s} over { 2 times 2 cm times pi} \ = \ 8.0 \ \rev/s \ = \ 480 \ \rpm]

가 된다.

토크는 로봇의 무게와 로봇의 바퀴와 경기장면 사이의 마찰 계수와 관계가 있다. 로봇의 무게가 0.4 kg, 경기장 면과 로봇 바퀴와의 마찰 계수를 0.43, 바퀴 축의 지름을 0.25 cm 라고 하면 최소한의 토크 [eqn: tau_G] 는

[eqn: tau_G \ = \ 1 over 2 times \ F \ times \ R \ = \ 1 over 2 times \ mu times m times g times R_0]

[eqn: = \ 1 over 2 times 0.43 times 0.4 kg times 9.8 m/s^2 times 0.0025 m \ = \ 0.0021 \Nm \ = \ 2.1 \mNm]

이다.

크기는 기어와 모터, 엔코더를 포함하여 6cm 이내라면 문제없다고 가정한다.

이러한 기어 박스와 모터의 요구 사양을 표로 정리하면 다음과 같다.

표 4. 기어 박스를 포함한 모터의 설계상황

선정 기준	요구 조건
소비 전력	12V, 250mA 이하
회전 속도 (rpm)	480 rpm 이상
토크 ([eqn: tau_G])	2.1 mNm 이상
길이 (L)	50 mm 이하

여기서 회전 속도 및 토크의 경우 기어를 사용하면 곱하거나 나누어 주어야 한다.

이 요구 조건에 대하여 다음의 모터 및 기어 조합을 생각해 보자.

Escap 모터사의 16C18-205 모터 및 B16-27 기어 박스의 사양은 각각 표 4.2 와 표 4.3 과 같다

표 4. B16C27 기어 박스의 사양

Measure Values (U)	Unit	16C18-205
Measuring Voltage	V	12
No-load Speed	rpm	17300
Stall Torque	mNm	1.2
Average No-load Current ([eqn: I_0])	mA	9
Typical Starting Voltage	V	0.15
Max. Continuous Current	A	0.16
Max. Continuous Torque	mNm	0.96
Max. Angular Acceleration	[eqn: 10^3 \rad/ \s^2]	59
Back-EMF Constant ([eqn: k_bemf])	V/1000rpm	0.66
Torque Constant ([eqn: k_T])	mNm/A	6.3
Terminal Resistance ([eqn: r])	ohm	65
Motor Regulation [eqn: \R/ \k^2]	[eqn: 10^3 / \Nms]	1600
Rotor Inductance	mH	1
Rotor Inertia	[eqn: \kgm^2 cdot 10 ^-7]	0.41
Mechanical Time Constant	ms	67
Thermal Time Constant (Rotor)	s	5
Thermal Time Constant (Stator)	s	230
Thermal Resistance (Rotor-body)	℃/W	15
Thermal Resistance (Body-ambient)	℃/W	40

표 4. 16C18-205 모터의 사양

Ratio ([eqn: N])	27
Efficiency ([eqn: eta_G])	0.73
Length with 16C18 (L)	33.7 mm
Mass (m)	6 g

요구 조건 중 토크를 기준으로 전류 및 속도를 계산해 보자.

먼저 [eqn: tau_M] 을 계산하면,

[eqn: tau_M \ = \ tau_G over { N times eta_G } \ = \ {2.1 \ ( \mNm)} over { 27 times 0.73} \ = \ 0.1061 \ ( \mNm)]

이고, 이것은 모터의 스톨 토크 (모터를 멈추기 위해 필요한 토크) 보다 작은 동작 영역에 포함되므로 토크 조건은 만족한다고 할 수 있다.

이 때 공급해야 할 전류 I 는,

[eqn: I \ = \ \ tau_M over k_T + I_0 \ = \ {0.1061 \ ( \mN)} over {6.3 \ ( \mN/A)} + 9 \ ( \mA) \ = \ 25.8 \ ( \mA)]

이다. 두 개의 모터에 대해서는 51.6 mA 가 소비된다.

모터의 직선 속도에 앞서 먼저 회전 속도 [eqn: n]을  계산한다.

[eqn: n \ = \ { U - I times r } over k_BEMF = {12 \ ( \V) - 25.8 \ ( \mA) times 65 \ ( \ohm)} over { 0.66 \ ( \V /1000rpm) } \ = \ 15641 \ ( \rpm)]

이로부터 직선 속도 v 는

[eqn: v \ = \ { 2 times pi times R times n } over { 60 times N} \ = \ 121 \ ( \cm/s)]

가 된다.

이상에서 위 조합의 모터와 기어 및 양방향 엔코더는 요구 조건을 모두 만족함을 알 수 있다.

4.2 구동회로

DC 모터를 제어하는 방법에는 여러 가지가 있지만 여기서는 PWM(Pulse width modulation)방법을 사용한다. 즉 그림 4.5와 같이 모터에 인가되는 전압을 ON/OFF 시켜서 모터에 인가되는 평균전압을 변화시킨다.

그림 4.5 펄스 제어 방법

ON시간이 길수록 모터에 가해지는 평균전압은 높아지게 된다. 즉, 같은 주기 T 동안에 펄스 폭(pulse width)을 조절하면 모터에 가해지는 평균전압이 그림 4.5(b)처럼 변하게 된다. DC 모터의 속도는 인가되는 전압에 비례하므로 PWM 방법으로 한 주기 내의 펄스 폭을 조정한다면 속도 조정이 가능하게 된다. 일반적으로 전원 전압이 [eqn: rm V_입력][V] 일 때 모터에 가해지는 평균전압은 다음과 같이 구해진다.

[eqn: rm V_평균전압~ = ~V_입력 ~times ~T_ON over T [V]]

마이크로 컨트롤러의 PWM신호를 이용하여 모터를 제어하기 위해서는 적절한 전류 증폭기가 필요하다. PWM 제어기에서 발생한 출력은 논리 회로의 출력으로 저전류이기 때문에 모터에 직접 인가했을 때 모터가 충분한 토크 및 속도를 발생할 수 없다. 따라서 충분한 전류를 공급해 주어야 하는데 이러한 기능을 하는 것이 모터 드라이버다. 보통 전원을 모터의 양단에 직접 연결하면  충분한 전류로 모터를 구동할 수 있는데 이와 같은 원리로 그림4.6 과 같은 H-브릿지 회로가 구성된다. 이것은 트랜지스터를 스위칭 모드에서 사용함으로써 전원에서 직접 모터로 전류를 흘려 보내준다. H-브릿지 회로에서의 트랜지스터는 스위치로 생각할 수 있다. 각각을 스위치로 생각하면 스위치 1과 3이 ON, 스위치 2와 4가 OFF 일 때 모터가 그림 4.7처럼 움직인다. 모터를 반대방향으로 구동시키려면 그림 4.8에서처럼 스위치 2와 4가 ON, 스위치 1과 3이 OFF 이면 된다.

그림 4.6 H-브릿지 회로

그림 4.7 정방향 회전

그림 4.8 역방향 회전

이런 구조를 가진 부품이 L298이다. L298은 내부에 2개의 H-브릿지 회로를 가지고 있어서 2개의 모터를 구동할 수 있다.